The present disclosure relates generally to mobile devices, and in particular to techniques for providing graphical interfaces for a spirit level application running on a mobile device based on user interactions with the mobile device.
Mobile devices, such as smart phones, tablet computers, media players, and the like, have become ubiquitous. A mobile device can have an operating system (OS), and can run various types of application software, sometimes called “apps.” Mobile devices can also be equipped with sensors and global positioning system (GPS) capabilities. Mobile devices often come equipped with a touchscreen interface that acts as both an input and an output device.
For example, the iPhone® commercially available from Apple Inc. is a smart phone that includes a variety of components, such as a compass, a magnetometer, an accelerometer, a gyroscope, and a GPS. The iPhone®'s OS can use components to determine the iPhone®'s speed, current location, and physical orientation (e.g., portrait or landscape). The OS can detect events from these components and pass these events on to applications that are executing on the iPhone®. Those applications can then handle the events in a manner that is custom to those applications. For example, using its built-in components, the iPhone® can detect its spatial orientation or changes to its spatial orientation and pass events representing the changes to one or more applications that have registered an interest in such events. An application can then process and respond to the event.
Mobile devices such as the iPhone®, the iPad® and iPod Touch® from Apple Inc. come equipped with a sensors and a touchscreen interface that can detect physical contact from a user of the mobile device and movement of the device, and generate corresponding events. For example, the iPhone® can detect when a user has single-tapped the screen, tilted the iPhone® relative to a vector such as a gravity vector, or changed the orientation of the iPhone® relative to a force such as gravity. Each such user interaction relative to the iPhone can cause a different kind of corresponding event to be generated for consumption by interested applications. Thus, the iPhone®, iPad®, and iPod Touch® are able to detect and respond to a variety of physical interactions that a user can take relative those devices.
Often, users have mobile devices with them as they perform activities such as photography, do it yourself projects, and other activities that involve determining whether an object is level or plumb, determining the pitch or slope of a surface, or calculating an angle. A user of a mobile device configured to determine whether an object or surface is level or plumb, and to determine the pitch, slope, or angle of the surface could use such a device when performing these activities.